1. Technical Field
Embodiments of the present invention generally relate to data protection systems. More particularly, embodiments of the present invention relate to a method and apparatus for concurrently accessing a tape drive from a plurality of nodes.
2. Description of the Related Art
Typically, in large to mid-sized organizations, multiple computing nodes are used to host various resources (e.g., software applications, storage resources, network resources and the like) for a plurality of client computers. The multiple nodes are also employed for performing a backup process for data related to the nodes and/or the client computers. The backup process is an important activity for protecting sensitive data (e.g., data that is confidential, privileged and/or critical to the organization). As such, the backup process may be conducted on a periodic basis to ensure preservation of the sensitive data. Most of the time, an organization employs several dedicated servers for performing regular data backups to ensure reservation of the sensitive data.
Data backed up during the backup process is generally stored on a storage device (e.g., a tape drive, a disk drive and the like). A tape drive is able to write (i.e. stream) data onto a media (e.g., magnetic tape) at a faster rate than the multiple nodes are able to communicate the data to the tape drive. As speeds of typical tape drives increase, a single node may not have a sufficient Input/Output (I/O) bandwidth to keep the tape drive or multiple tape drives streaming (i.e., writing) to the media at the faster transfer rate (e.g., I/O rate). This results in inefficient utilization of the tape drive and reduction of an overall backup rate of a typical backup process.
Furthermore, the tape drive is prevented or disrupted from streaming the data to the tape due to insufficient I/O bandwidth at the single node. When the transfer rate of the data falls below a minimum threshold at which heads associated with the tape drive were designed to transfer data to a running tape (e.g., shoe-shining effect), the tape drive must decelerate the running tape, stop the running tape, rewind the running tape, accelerate again to a proper speed and resume streaming from a same position. Disruptions to the streaming of data wastes available tape space, causes latency and results in overuse of the media.
According to one of typical method, multiplexing is performed on the single node using threads in an effort to improve the transfer rate of the data to the running tape. However, the single node may still be limited to an insufficient I/O rate. Hence, the above mentioned problem still persists because the single node can only transfer data at or below its I/O rate, which is substantially below the speed of a tape drive despite any improvement to the transfer rate caused by the multiplexing. Moreover, nodes that have a sufficient I/O bandwidth to keep the tape drive streaming are too expensive to be used for performing the backup process by most organizations.
Accordingly, there exists a need in the art for a method and apparatus for accessing a tape drive from a plurality of nodes in a manner that normalizes a data transfer rate to the tape drive.